home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Development Libraries / SGI IRIX 6.2 Development Libraries.iso / dist / complib.idb / usr / share / catman / p_man / cat3 / complib / zlarf.z / zlarf
Text File  |  1996-03-14  |  3KB  |  133 lines

  1.  
  2.  
  3.  
  4. ZZZZLLLLAAAARRRRFFFF((((3333FFFF))))                                                            ZZZZLLLLAAAARRRRFFFF((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      ZLARF - applie a complex elementary reflector H to a complex M-by-N
  10.      matrix C, from either the left or the right
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      SUBROUTINE ZLARF( SIDE, M, N, V, INCV, TAU, C, LDC, WORK )
  14.  
  15.          CHARACTER     SIDE
  16.  
  17.          INTEGER       INCV, LDC, M, N
  18.  
  19.          COMPLEX*16    TAU
  20.  
  21.          COMPLEX*16    C( LDC, * ), V( * ), WORK( * )
  22.  
  23. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  24.      ZLARF applies a complex elementary reflector H to a complex M-by-N matrix
  25.      C, from either the left or the right. H is represented in the form
  26.  
  27.            H = I - tau * v * v'
  28.  
  29.      where tau is a complex scalar and v is a complex vector.
  30.  
  31.      If tau = 0, then H is taken to be the unit matrix.
  32.  
  33.      To apply H' (the conjugate transpose of H), supply conjg(tau) instead
  34.      tau.
  35.  
  36.  
  37. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  38.      SIDE    (input) CHARACTER*1
  39.              = 'L': form  H * C
  40.              = 'R': form  C * H
  41.  
  42.      M       (input) INTEGER
  43.              The number of rows of the matrix C.
  44.  
  45.      N       (input) INTEGER
  46.              The number of columns of the matrix C.
  47.  
  48.      V       (input) COMPLEX*16 array, dimension
  49.              (1 + (M-1)*abs(INCV)) if SIDE = 'L' or (1 + (N-1)*abs(INCV)) if
  50.              SIDE = 'R' The vector v in the representation of H. V is not used
  51.              if TAU = 0.
  52.  
  53.      INCV    (input) INTEGER
  54.              The increment between elements of v. INCV <> 0.
  55.  
  56.      TAU     (input) COMPLEX*16
  57.              The value tau in the representation of H.
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ZZZZLLLLAAAARRRRFFFF((((3333FFFF))))                                                            ZZZZLLLLAAAARRRRFFFF((((3333FFFF))))
  71.  
  72.  
  73.  
  74.      C       (input/output) COMPLEX*16 array, dimension (LDC,N)
  75.              On entry, the M-by-N matrix C.  On exit, C is overwritten by the
  76.              matrix H * C if SIDE = 'L', or C * H if SIDE = 'R'.
  77.  
  78.      LDC     (input) INTEGER
  79.              The leading dimension of the array C. LDC >= max(1,M).
  80.  
  81.      WORK    (workspace) COMPLEX*16 array, dimension
  82.              (N) if SIDE = 'L' or (M) if SIDE = 'R'
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.